package com.wzy.authority.mapper;

import com.github.pagehelper.Page;
import com.wzy.authority.domain.SysRole;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;


public interface SysRoleMapper {
    /**
     * 根据id删除角色列表
     * @param id
     * @return
     */
    int deleteByPrimaryKey(Integer id);


    /**
     * 插入一条记录
     * @param record
     * @return
     */
    int insert(SysRole record);


    /**
     * 选择性插入数据
     * @param record
     * @return
     */
    int insertSelective(SysRole record);


    /**
     * 获取数据通过主键
     * @param id
     * @return
     */
    SysRole selectByPrimaryKey(Integer id);


    /**
     * 选择性修改
     * @param record
     * @return
     */
    int updateByPrimaryKeySelective(SysRole record);


    /**
     * 所有的数据修改
     * @param record
     * @return
     */
    int updateByPrimaryKey(SysRole record);


    /**
     * 获取所有的角色列表
     * @param roleName
     * @return
     */
    Page<SysRole> selectRoleList(@Param("roleName") String roleName);


    /**
     * 根据角色名称查询用户数
     * @param roleName
     * @return
     */
    Integer selectRoleByName(@Param("roleName") String roleName, @Param("id") Integer id);


    /**
     * 获取所有权限数据
     * @return
     */
    @Select("select *  from sys_role")
    List<SysRole> selectRoleListAll();
}